Create Session for Existing Patron
POST/api/patronsession/existing
In order to complete a transaction using the VIP Connect SDK an operator must create a session for the end user to use with a valid session ID.
Notes:
- The API Specification section describes the different /api/patronsession calls available.
- The web component will immediately display a loading modal dialog while the backend-to-backend session creation calls are occurring. The modal dialog will then display the VIP user interface after a valid session ID has been returned to the web component.
API Specification
The following APIs are available to authenticated operators to create sessions for end users that do or do not have an existing VIP account.
There is an API specific to new users that need to enroll in VIP Preferred or VIP Online as well as an API that serves already enrolled users. The Account Inquiry API is used to check if a user already has an existing account.
Once you obtain a VIP Preferred Card Number from Pavilion Payments, it's best practice to retain this number and use it for all transactions using the existing patron API.
For end users that do have an existing VIP account, submit the end user’s VIP card number to avoid having to send sensitive PII. An end user’s date of birth will be used to validate the cardholder. All fields are required.
Example Scenario:
- Operator makes an authenticated call to VIP Connect API.
- VIP Connect API will validate and create a new session.
- Session ID and other properties (refer) are returned as response to the operator.
- Operator uses the session ID to invoke web component
Request
Responses
- 200
- 400
Returns session details.
Example Success Response:
{
"patronId": "0ef56720-47b6-46bc-9a3a-b81bd511d10a",
"sessionId": "73a747bb-4d3c-4776-af73-945f8fdeaef8",
"expires": "2024-04-26T17:20:31.6361748+00:00",
"enrollmentStatus": "complete",
"vipCardNumber": "7210536159",
"operatorName": "Operator - 1",
"depositLimit": 999.99,
"minDeposit": 10.00,
"withdrawLimit": 1000.0,
"minWithdraw": 1.00,
"transactionId": "tranid1099",
"transactionAmount": 10.33,
"returnUrl": "https://www.onlinebettingportal.com/success",
"patronProductType": "Preferred",
"oneClickDiscountApplied": false,
"cancelRedirectUrl": "https://www.onlinebettingportal.com/cancel"
}
Example Error Response:
{
"patronId": "0ef56720-47b6-46bc-9a3a-b81bd511d10a",
"sessionId": "00000000-0000-0000-0000-000000000000",
"expires": "2024-04-26T15:18:30.8687626+00:00",
"enrollmentStatus": "none",
"operatorName": "Operator - 1",
"depositLimit": 999.99,
"minDeposit": 10.00,
"withdrawLimit": 1000.0,
"minWithdraw": 1.00,
"transactionId": "tranid1099",
"transactionAmount": 10.33,
"returnUrl": "https://www.onlinebettingportal.com/success",
"oneClickDiscountApplied": false,
"cancelRedirectUrl": "https://www.onlinebettingportal.com/cancel",
"errorModel": {
"errorCode": "99",
"transactionStage": "VIP Account Inquiry",
"operatorErrorMessage": "Invalid Account.",
"operatorDeclineDescription": "This transaction has been requested from an account that has been closed. For further assistance please contact Pavilion Gaming Services customer support at 1-800-500-1973 with reference code E-99.",
"patronErrorMessage": "Sorry, unable to complete this request. Please contact CAMS at 1-800-500-1973 for support using error code E-99."
}
}
API received the request but validation errors occurred
Example Response
{
"errorCode": "400",
"operatorErrorMessage": "Validation failed: DateOfBirth: 'Date Of Birth' must not be empty.",
"patronErrorMessage": "Invalid request data. Please check your input and try again."
}